package com.javacoding.huawei;

import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import java.util.Scanner;

public class HJ8合并表记录 {
    //    public static void main(String[] args)
//    {
//        Scanner scanner = new Scanner(System.in);
//        int tableSize = scanner.nextInt();
//        Map<Integer, Integer> table = new HashMap<>(tableSize);
//        for (int i = 0; i < tableSize; i++) {
//            int key = scanner.nextInt();
//            int value = scanner.nextInt();
//            if (table.containsKey(key)) {
//                table.put(key, table.get(key) + value);
//            } else {
//                table.put(key, value);
//            }
//        }
//        for (Integer key : table.keySet()) {
//            System.out.println( key + " " + table.get(key));
//        }
//
//    }
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNextInt()) { // 注意 while 处理多个 case
            int number = in.nextInt();
            Map<Integer, Integer> map = new HashMap<Integer,Integer>();
            while (number != 0) {
                int i = in.nextInt();
                int v = in.nextInt();
                if(map.containsKey(i)){
                    map.put(i,map.get(i)+v);
                }else{
                    map.put(i,v);
                }
                number--;
            }
            map.keySet().forEach(key->{
                System.out.println(key+" "+map.get(key));
            });
        }
    }
}
